class grass_kernels
{
  public:
    // To test with vectorial data
    inline	grass_kernels(field<mat> grass_points); 
    
    inline mat projection();	// Projection Kernel - Sareh's paper (Clustering on Grassmann....)
    inline mat projection2();	 //Faster
    inline mat binet_cauchy();	// Binet-Cauchy Kernel - Mehrtash's paper (Sparse Representation over Grassmann Manifolds...)
    inline mat can_corr();	// Canonical Correlation Pseudo-Kernel - - Mehrtash's paper (Sparse Representation over Grassmann Manifolds...)
    
  
  private:
     const uword N_points;
     const field<mat> grass_points;
};